package com.project.shtp.dao;

import com.project.shtp.pojo.web.vo.MyGoodsInfo;
import com.project.shtp.pojo.web.vo.OrderInquiry;
import com.project.shtp.pojo.web.dto.User;
import com.project.shtp.pojo.web.vo.HistoryBrowse;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.data.repository.query.Param;
import com.project.shtp.pojo.web.vo.PersonalInfoVO;
import com.project.shtp.pojo.web.vo.UserAllMessage;
import com.project.shtp.pojo.web.vo.UserCollection;
import com.project.shtp.pojo.web.vo.UserOrderWithGoods;

import org.springframework.stereotype.Repository;

import java.util.List;

@Mapper
@Repository
public interface UserDao {

    String queryAccountInfo();


    List<OrderInquiry> queryMyOrderForm(@Param("userId") Integer userId,@Param("statusId") Integer statusId);

    List<User> queryFollower(@Param("userId") Integer userId);

    List<HistoryBrowse> queryUserBrowse(@Param("userId") Integer userId);

    List<User> queryUserFans(@Param("userId") Integer userId);

    int changeOrder(@Param("orderId") Integer orderId,@Param("statusId") Integer statusId);




    //UserRolesVO getGroupUserRoleInfo(UserRolesVO userRolesVO);


    List<MyGoodsInfo> searchMyGoods(Integer userId);

    void updatePersonalInfo(PersonalInfoVO personalInfoVO);
    //UserRolesVO getGroupUserRoleInfo(UserRolesVO userRolesVO);


    List<UserAllMessage> queryUserAllMessage(Integer userId);

    List<UserCollection> queryUserCollection (Integer userId);

    List<UserOrderWithGoods> queryOrderWithGoods(Integer userId);

    Integer cancelTheOrder(@Param("orderId") Integer orderId);
    //UserRolesVO getGroupUserRoleInfo(UserRolesVO userRolesVO);

}
